import type { PlasmoCSConfig } from "plasmo"

export const config: PlasmoCSConfig = {
  matches: ["<all_urls>"],
  all_frames: true
}
//manifest.json 需要添加这个权限 permissions
// 加载成功即浏览器网页环境, 可以自定义修改内容, 和油猴插件同理
window.addEventListener("load", () => {
  console.log("custom plugin load successfully")
  // console.log(window)
  autoRedirect()
  // document.body.style.background = "pink"
})

function autoRedirect() {
  chrome.storage.sync.get("checked", ({ checked }) => {
    function link(event: any) {
      const target = event.target
      // 判断点击的是否a标签
      if (target?.nodeName.toLocaleLowerCase() === "a") {
        const href = target.getAttribute("href")
        if (href.indexOf("://link") > -1) {
          // 禁止默认的跳转行为
          event.preventDefault()
          const link = href.split("target=")[1]
          const url = decodeURIComponent(link)
          // 处理完 a 标签的内容，重新触发跳转，根据原来 a 标签页 target 来判断是否需要新窗口打开
          if (target.getAttribute("target") === "_blank") {
            // 新窗口打开
            window.open(url)
          } else {
            // 当前窗口打开
            window.location.href = url
          }
        }
      }
    }
    if (checked) {
      document.body.addEventListener("click", link)
    } else {
      document.body.removeEventListener("click", link)
    }
  })
}
